Local area network (LAN) is a communication system for interconnecting a plurality of independent stations in a relatively small area. The most popular topology to embody a LAN is a bus/tree network where the data transmission unit is usually called a frame or a packet, and where only one station is allowed to transmit data at one time because the bus/tree is shared by all the stations.
Many protocol standards have been developed by IEEE 802 committee, among which IEEE 802.3 is the standard defining the protocol for the bus/tree of a LAN, i.e., the bus/tree protocol that implements carrier sense multiple access with collision detection (CSMA/CD). The standard also defines a media access control (MAC) function for transmitting packets to and receiving packets from transmission media, and the structure of packets, as well as the interaction taking place between the MAC entities in the network. The standard specifies a medium attachment unit (MAU) connecting directly with physical medium and an attachment unit interface (AUI) which serves as the transmission media between a station and an associated MAU.
According to the conventional CSMA protocol, the station ready to send data keeps sensing if the transmission media is busy, and waits, in case it is busy, until the signal of the carrier is not sensed. The packet transmission begins after a time period of IFG (inter-frame gap) following the silence. FIG. 1 shows the relation between a packet and an IFG in time domain for transmission media, in which IFG 14 separates packet 10 and packet 12.
According to IEEE 802.3 standard, an inter-frame spacing is defined as follows:
The first part of an inter-frame spacing=duration of first portion of the inter-frame timing, ranging from 0 to 2/3 of the inter-frame spacing; and PA1 the second part of an inter-frame spacing=duration of the remainder of the inter-frame timing, equaling the result: inter-frame spacing-the first part of inter-frame spacing (subtracting the first part of inter-frame spacing from the inter-frame spacing). PA1 to provide a method for generating an IFG more reasonably and usably; PA1 to increase the adjustable range of an IFG length; and PA1 to provide a method for easier adjusting of an IFG to meet the requirement of IEEE 802.3 standard.
A structure example based on the definition is shown in FIG. 2 where 16 is the first part which may range from 0 to 2/3 and 18 is the second part which is the remainder in the inter-frame spacing.
Practically IFG 14 in the figure must be adjusted from time to time. For example, an ethernet packet generator must afford to generate an IFG of adjustable length in order to adapt to the performance test of various ethernet products, and the MAUs made by different suppliers have different delays for carrier sensing loopback, thereby need adjustment of IFG to meet full-line speed of Ethernet operation (or capacity). According to prior arts, either network interface controller (NIC) or switch controller, allow very small range for adjustment, as can be seen from FIG. 3 where 16, the first part of the IFG is fixed, while 18, the second part of the IFG is the only part for adjusting, allowing the IFG with the second part equaling zero to be the shortest IFG. Although the length of the longest the second part of IFG is not limited, the second part of too much length will lead to the difficulty of maintaining the ordinary ratio between part1 and the second part of an IFG, which thereby limits the adjustable range of IFG 14. Clearly the conventional scheme thus implemented will bring about an unbalance, or even conflict the requirement of IEEE.
The practical implementation of a serial network interface (SNI) is taken for example to be illustrated as follows:
Assume IFG 14 is preset to be 99 bits of length with the first part of 66 bits and the second part of 33 bits. Also assume the associated configuration register is 8 bits long, with bit B7 indicating the increase or decrease of IFG length, and the other bits B0.about.B6 recording the increased amount (increment) or decreased amount (reduction) of IFG length adjustment, B7=0 indicating increase while B7=1 indicating decrease of IFG length. A variety of IFG configurations for various IFG lengths based on the above example is shown in Table 1 below where the 7 bits of the configuration register record the increment or reduction of IFG length, which ranges from 0 to 127, meaning that the second part of IFG can be increased by an increment of no more than 127 bits and can be decreased by a reduction of only 33 bits because it was preset to be 33 bits long and its feasible minimum length is zero, allowing a range of [99-33].about.[99+127] bits for the IFG with maximum adjustable range of only [-33].about.[+127]. It is therefore expected by those in the related fields to have a new method for adjusting IFG in such a way that it can adapt to various applications.
TABLE 1 ______________________________________ conventional adjustment of IFG for SNI Content of Configuration IFG outputted by register The first part The second part MAC ______________________________________ 0 66 33 99 1 66 33 + 1 99 + 1 2 66 33 + 2 99 + 2 3 66 33 + 3 99 + 3 4 66 33 + 4 99 + 4 5 66 33 + 5 99 + 5 . . . . . . . . . . . . 127 66 33 + 127 99 + 127 128 66 33 99 129 66 33 - 1 99 - 1 130 66 33 - 2 99 - 2 131 66 33 - 3 99 - 3 132 66 33 - 4 99 - 4 133 66 33 - 5 99 - 5 . . . . . . . . . . . . 162 66 33 - 33 99 - 33 ______________________________________